package ConversationClasses 
{
	import Data.Color;
	import StoryGeneration.Relationship;
	import org.flixel.FlxG;
	import org.flixel.FlxU;
	
	public class CharacterSpecific 
	{
		public static function getDetectiveName(target:Character = null):String
		{
			var temp:String = "";
			
			if (target == null)
			{
				temp = "Detective";
			}
			else
			{
				switch (target.relationship)
				{
				case Relationship.WIFE:
					temp = "Detective";
					break;
				case Relationship.DAUGHTER:
					temp = "Sir";
					break;
				case Relationship.SERVANT:
					temp = "Sir";
					break;
				case Relationship.BIZ_PARTNER:
					temp = "Detective " + Player.name.getLastName();
					break;
				case Relationship.FRIEND:
					//switch(FlxU.floor(FlxG.random() * 2))
					//{
						//case 0:
							//temp = Player.name.getFirstName();
							//break;
						//case 1:
						//case 2:
							//temp = Player.name.getNickName();
							//break;
					//}
					temp = Player.name.getNickName();
					break;
				case Relationship.LOVER:
					temp = "Mr. " + Player.name.getLastName();
					break;
				}
			}
			
			return temp;
		}
		
		public static function getNameIntroPhrase(target:Character = null):String
		{
			var temp:String = "";
			
			if (target == null)
			{
				temp = "my name is %N";
			}
			else
			{
				switch (target.relationship)
				{
				case Relationship.WIFE:
					temp = "I am %N, %V's wife.";
					break;
				case Relationship.DAUGHTER:
					temp = "I'm %N.";
					break;
				case Relationship.SERVANT:
					temp = "my name is %N. Call upon me should you require anything.";
					break;
				case Relationship.BIZ_PARTNER:
					temp = "you may call me %N. ";
					break;
				case Relationship.FRIEND:
					temp = "people call me %N, " + target.name.getNickName() + " for short.";
					break;
				case Relationship.LOVER:
					temp = "call me %N. Miss %N.";
					break;
				}
			}
			
			return temp;
		}
		
		public static function getVictimName(target:Character):String
		{
			var temp:String = "";
			
			switch (target.relationship)
			{
			case Relationship.WIFE:
				temp = Victim.name.getNickName();
				break;
			case Relationship.DAUGHTER:
				temp = "Dad";
				break;
			case Relationship.SERVANT:
				temp = "Mr. " + Victim.name.getLastName();
				break;
			case Relationship.BIZ_PARTNER:
				temp = Victim.name.getFirstName();
				break;
			case Relationship.FRIEND:
				temp = Victim.name.getFirstName();
				break;
			case Relationship.LOVER:
				temp = Victim.name.getNickName();
				break;
			}
			
			return temp;
		}
		
		public static function getColor(target:Character):uint
		{
			var temp:uint = Color.WhiteWOA;
			
			switch (target.relationship)
			{
			case Relationship.WIFE:
				temp = Color.CharSpouse;
				break;
			case Relationship.DAUGHTER:
				temp = Color.CharDaughter;
				break;
			case Relationship.SERVANT:
				temp = Color.CharButler;
				break;
			case Relationship.BIZ_PARTNER:
				temp = Color.CharBusiness;
				break;
			case Relationship.FRIEND:
				temp = Color.CharFriend;
				break;
			case Relationship.LOVER:
				temp = Color.CharLover;
				break;
			}
			
			return temp;
		}
	}
}